<?php
namespace app\index\validate;

/**
 * 引入验证器基类
 */
use think\Validate;

/**
 * 留言验证器类
 * 负责留言相关数据的验证规则和错误提示
 */
class Message extends Validate
{
    /**
     * 验证规则定义
     * 设置各字段的验证规则
     * 
     * @var array
     */
    protected $rule = [
        'content' => 'require|length:1,1000',  // 留言内容必填且长度1-1000
        'user_id' => 'number',                 // 用户ID必须为数字
        'is_anonymous' => 'in:0,1'             // 匿名状态只能是0或1
    ];

    /**
     * 错误提示信息
     * 定义验证失败时的错误提示
     * 
     * @var array
     */
    protected $message = [
        'content.require' => '留言内容不能为空',
        'content.length' => '留言内容长度必须在1-1000个字符之间',
        'user_id.number' => '用户ID必须是数字',
        'is_anonymous.in' => '匿名状态值不正确'
    ];

    /**
     * 验证场景定义
     * 针对不同操作设置不同的验证规则
     * 
     * @var array
     */
    protected $scene = [
        'create' => ['content', 'user_id', 'is_anonymous'],  // 创建留言场景
        'update' => ['content']                              // 更新留言场景
    ];
} 